Actris 2.0: Asynchronous Session-Type Based Reasoning in Separation Logic

نویسندگان

چکیده

Message passing is a useful abstraction for implementing concurrent programs. For real-world systems, however, it often combined with other programming and concurrency paradigms, such as higher-order functions, mutable state, shared-memory concurrency, locks. We present Actris: logic proving functional correctness of programs that use combination the aforementioned features. Actris combines power modern separation logics first-class protocol mechanism -- based on session types reasoning about message in presence paradigms. show provides suitable level by variety examples, including channel-based merge sort, load-balancing mapper, variant map-reduce model, using concise specifications. While was already presented conference paper (POPL'20), this expands prior presentation significantly. Moreover, extends to 2.0 notion subprotocols session-type subtyping permits additional flexibility when composing channel endpoints, takes full advantage asynchronous semantics Actris. Soundness proven model its Iris framework. have mechanised theory Actris, together custom tactics, well all examples paper, Coq proof assistant.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Diagrammatic Reasoning in Separation Logic

Separation logic is used for reasoning about low-level imperative programs that manipulate pointer data structures. It enables the writing of concise proofs of correctness of the specifications of simple programs, and such proofs have been successfully automated. When reasoning informally about separation logic, it is often useful to draw diagrams representing program states, with memory locati...

متن کامل

SeLoger: A Tool for Graph-Based Reasoning in Separation Logic

This paper introduces the tool SeLoger, which is a reasoner for satisfiability and entailment in a fragment of separation logic with pointers and linked lists. SeLoger builds upon and extends graphbased algorithms that have recently been introduced in order to settle both decision problems in polynomial time. Running SeLoger on standard benchmarks shows that the tool outperforms current state-o...

متن کامل

Linear type theory for asynchronous session types

Session types support a type-theoretic formulation of structured patterns of communication, so that the communication behaviour of agents in a distributed system can be verified by static type checking. Applications include network protocols, business processes, and operating system services. In this paper we define a multithreaded functional language with session types, which unifies, simplifi...

متن کامل

Cut Reduction in Linear Logic as Asynchronous Session-Typed Communication

Prior work has shown that intuitionistic linear logic can be seen as a session-type discipline for the π-calculus, where cut reduction in the sequent calculus corresponds to synchronous process reduction. In this paper, we exhibit a new process assignment from the asynchronous, polyadic π-calculus to exactly the same proof rules. Proof-theoretically, the difference between these interpretations...

متن کامل

Resource Reasoning and Labelled Separation Logic

This thesis develops resource reasoning with separation logic in the areas of modular program specification, program optimization, and concurrency verification for heap-manipulating programs. In the first part, we investigate the resources that are required for modular and complete program specifications. Since the safety footprints of a program (the resources required for safe execution) do no...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

ژورنال

عنوان ژورنال: Logical Methods in Computer Science

سال: 2022

ISSN: ['1860-5974']

DOI: https://doi.org/10.46298/lmcs-18(2:16)2022